From 308d30d0801401a0d417feb7d9ed793d668d6bfa Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Tue, 8 Jan 2019 09:41:26 -0500 Subject: [PATCH] pull: If built with --disable-http2, allow enabling via http2=1 We have a `http2=[0|1]` remote config option; let's have the `--disable-http2` build option define the default for that. This way it's easy to still enable http2 for testing even if we have it disabled by default. Closes: #1798 Approved by: jlebon --- src/libostree/ostree-fetcher-curl.c | 3 +-- src/libostree/ostree-repo-pull.c | 9 +++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/libostree/ostree-fetcher-curl.c b/src/libostree/ostree-fetcher-curl.c index 9738f980..294b2078 100644 --- a/src/libostree/ostree-fetcher-curl.c +++ b/src/libostree/ostree-fetcher-curl.c @@ -777,7 +777,6 @@ initiate_next_curl_request (FetcherRequest *req, * there are numerous HTTP/2 fixes since the original version in * libcurl 7.43.0. */ -#ifdef BUILDOPT_HTTP2 if (!(self->config_flags & OSTREE_FETCHER_FLAGS_DISABLE_HTTP2)) { #if CURL_AT_LEAST_VERSION(7, 51, 0) @@ -789,7 +788,7 @@ initiate_next_curl_request (FetcherRequest *req, curl_easy_setopt (req->easy, CURLOPT_PIPEWAIT, 1L); #endif } -#endif + curl_easy_setopt (req->easy, CURLOPT_WRITEFUNCTION, write_cb); if (g_getenv ("OSTREE_DEBUG_HTTP")) curl_easy_setopt (req->easy, CURLOPT_VERBOSE, 1L); diff --git a/src/libostree/ostree-repo-pull.c b/src/libostree/ostree-repo-pull.c index b7eba9d2..4b596da1 100644 --- a/src/libostree/ostree-repo-pull.c +++ b/src/libostree/ostree-repo-pull.c @@ -2948,9 +2948,14 @@ _ostree_repo_remote_new_fetcher (OstreeRepo *self, if (gzip) fetcher_flags |= OSTREE_FETCHER_FLAGS_TRANSFER_GZIP; - { gboolean http2 = TRUE; + { gboolean http2_default = TRUE; +#ifndef BUILDOPT_HTTP2 + http2_default = FALSE; +#endif + gboolean http2; + if (!ostree_repo_get_remote_boolean_option (self, remote_name, - "http2", TRUE, + "http2", http2_default, &http2, error)) goto out; if (!http2) -- 2.30.2